ScriptBegin
var Grafik="Script Escher";

var a=5;
    r=100;
    PenC ="black";    
    Fill ="black";
    Fill1 ="crimson";
    Fill2 ="yellow";

    maxi = 40;
    maxj = 30;

function init() //Initialisierungen
{ t.setBrush(Fill2);
  t.setPage();
  t.setAntiAliasing();
} 

function draw() //Zeichenbefehle
{ t.drawKoordSystem();
  //t.drawRaster();

  
  defBasis();
  t.goTo(0,0); t.turnTo(0); 
//  t.setRotate(80);  

  t.draw("Kreis");
  t.morphDraw("Kreis");
//return;  
  for(i=-maxi; i<=maxi; i++)
  { for(j=-maxj; j<=maxj; j++)
    { t.goTo(i*a,j*a);
      n=(i*i+j*j)%2;
      t.morphDraw("Quadrat"+n);
    }
  }
}


function defBasis()
{ t.setNoStyle();
  t.goTo(-a/2,-a/2)
  t.rectPolygon(a,a)
  t.setPen(PenC); t.setBrush(Fill); 
  t.defDraw("Quadrat0");
  //t.refineDraw("Quadrat0");
  t.setBrush(Fill1); 
  t.defDraw("Quadrat1");
  //t.refineDraw("Quadrat1");

  //t.setNoStyle();
  t.goTo(0,0);
  t.isoPolygon(r,-1,2);
  t.setPen(PenC); 
  t.defDraw("Kreis");
}

var u=19;
function g(x)
{x/=u;
return x*x*x;
 return Math.abs(x*x*x);  
}



function morphX(x,y)
{// return x;
 d=Math.sqrt(x*x+y*y); 
 return g(d)*x/d
}

function morphY(x,y)
{// return y;
 d=Math.sqrt(x*x+y*y); 
 return g(d)*y/d
}

ScriptEnd

===============================================

ScriptBegin
var Grafik="Script Funktionen";

function f(x)
{ return x;
}

var u=0.00011;
function g(x)
{return x*x*x*u;  
}



function h(x)
{if (x<0) return Math.sqrt(-x*u);  
 return Math.sqrt(x*u);  
}

function init() //Initialisierungen
{ t.setPage(2); } 

function draw() //Zeichenbefehle
{ t.drawKoordSystem();
  t.drawRaster();
  t.drawGraf("g");
  t.setPen("red");
  t.drawGraf("f");
}
ScriptEnd

